package a08;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

import javax.annotation.PreDestroy;

@Scope("session")
@Component
public class BeanForSession {
    private static final Logger log = LoggerFactory.getLogger(BeanForSession.class);

    /**
     * session过期时间默认是30分钟，可以在server.servlet.session.timeout修改
     * session到期后，session域的对象在一定时间内也会被销毁，也就会调用destroy方法
     * 不过session到期后，spring不会立即检测到，destroy方法的调用有一些延迟
     */
    @PreDestroy
    public void destroy() {
        log.debug("destroy");
    }
}
